TPTP Problem File: MSC031^1.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : MSC031^1 : TPTP v8.2.0. Released v7.0.0.
% Domain : Miscellaneous (Pigeon-hole principle)
% Problem : International Mathematical Olympiad, 1972, Problem 1
% Version : [Mat16] axioms : Especial.
% English : Prove that from a set of ten distinct two-digit numbers (in the
% decimal system), it is possible to select two disjoint subsets
% whose members have the same sum.
% Refs : [Mat16] Matsuzaki (2016), Email to Geoff Sutcliffe
% : [MI+16] Matsuzaki et al. (2016), Race against the Teens - Benc
% Source : [Mat16]
% Names : IMO-1972-1.p [Mat16]
% Status : Theorem
% Rating : ? v7.0.0
% Syntax : Number of formulae : 3485 ( 710 unt;1199 typ; 0 def)
% Number of atoms : 7930 (2213 equ; 0 cnn)
% Maximal formula atoms : 40 ( 3 avg)
% Number of connectives : 39694 ( 104 ~; 233 |;1187 &;36043 @)
% (1095 <=>;1032 =>; 0 <=; 0 <~>)
% Maximal formula depth : 33 ( 8 avg)
% Number arithmetic : 4488 ( 382 atm;1203 fun; 953 num;1950 var)
% Number of types : 40 ( 36 usr; 3 ari)
% Number of type conns : 2408 (2408 >; 0 *; 0 +; 0 <<)
% Number of symbols : 1218 (1174 usr; 72 con; 0-9 aty)
% Number of variables : 8074 ( 409 ^;7096 !; 433 ?;8074 :)
% ( 136 !>; 0 ?*; 0 @-; 0 @+)
% SPC : TH1_THM_EQU_ARI
% Comments : Theory: PA; Score: 5; Author: Takuya Matsuzaki;
% Generated: 2015-01-12
%------------------------------------------------------------------------------
include('Axioms/MAT001^0.ax').
%------------------------------------------------------------------------------
thf(p,conjecture,
! [V_n0: $int,V_n1: $int,V_n2: $int,V_n3: $int,V_n4: $int,V_n5: $int,V_n6: $int,V_n7: $int,V_n8: $int,V_n9: $int,V_ns: 'ListOf' @ $int] :
( ( ( V_ns
= ( 'cons/2' @ $int @ V_n0 @ ( 'cons/2' @ $int @ V_n1 @ ( 'cons/2' @ $int @ V_n2 @ ( 'cons/2' @ $int @ V_n3 @ ( 'cons/2' @ $int @ V_n4 @ ( 'cons/2' @ $int @ V_n5 @ ( 'cons/2' @ $int @ V_n6 @ ( 'cons/2' @ $int @ V_n7 @ ( 'cons/2' @ $int @ V_n8 @ ( 'cons/2' @ $int @ V_n9 @ ( 'nil/0' @ $int ) ) ) ) ) ) ) ) ) ) ) )
& ( 'all/2' @ $int
@ ^ [V_m: $int] :
( ( $lesseq @ 10 @ V_m )
& ( $lesseq @ V_m @ 99 ) )
@ V_ns )
& ( $less @ V_n0 @ V_n1 )
& ( $less @ V_n1 @ V_n2 )
& ( $less @ V_n2 @ V_n3 )
& ( $less @ V_n3 @ V_n4 )
& ( $less @ V_n4 @ V_n5 )
& ( $less @ V_n5 @ V_n6 )
& ( $less @ V_n6 @ V_n7 )
& ( $less @ V_n7 @ V_n8 )
& ( $less @ V_n8 @ V_n9 ) )
=> ? [V_ns1: 'ListOf' @ $int,V_ns2: 'ListOf' @ $int,V_ss1: 'SetOf' @ $int,V_ss2: 'SetOf' @ $int] :
( ( V_ss1
= ( 'set-by-def/1' @ $int
@ ^ [V_m_dot_2: $int] : ( 'member/2' @ $int @ V_m_dot_2 @ V_ns1 ) ) )
& ( V_ss2
= ( 'set-by-def/1' @ $int
@ ^ [V_m_dot_1: $int] : ( 'member/2' @ $int @ V_m_dot_1 @ V_ns2 ) ) )
& ( 'is-empty/1' @ $int @ ( 'set-intersection/2' @ $int @ V_ss1 @ V_ss2 ) )
& ( ( 'set-union/2' @ $int @ V_ss1 @ V_ss2 )
= ( 'set-by-def/1' @ $int
@ ^ [V_m_dot_0: $int] : ( 'member/2' @ $int @ V_m_dot_0 @ V_ns ) ) )
& ( ( 'int.sum/1' @ V_ns1 )
= ( 'int.sum/1' @ V_ns2 ) ) ) ) ).
%------------------------------------------------------------------------------